package org.xiyinjihe.platform.config;

import com.github.pagehelper.PageHelper;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import java.util.Properties;

@Configuration
public class MybatisPageConf {

    @Bean
    public PageHelper pageHelper() {
        PageHelper pageHelper = new PageHelper();
        Properties p = new Properties();
        //可选值为oracle,mysql,mariadb,sqlite,hsqldb,postgresql,sqlserver,没有默认值，必须指定该属性。
        p.setProperty("dialect", "mysql");
        //默认值为false，使用默认值时不需要增加该配置。当该参数设置为true时，使用RowBounds分页时，会将offset参数当成pageNum使用，可以用页码和页面大小两个参数进行分页
        p.setProperty("offsetAsPageNum", "true");
        //设置为true时，使用RowBounds分页会进行count查询
        p.setProperty("rowBoundsWithCount", "true");
        //设置为true时，如果pageSize=0或者RowBounds.limit = 0就会查询出全部的结果
        p.setProperty("pageSizeZero", "true");
        pageHelper.setProperties(p);
        return pageHelper;
    }
}